package mlz.a_static;

// static需要注意的事项
/*
- 类方法中可以直接访问类的成员,不可以直接访问实例成员
- 实例方法中是可以直接访问类成员,也可以直接访问实例成员
- 实例方法中可以出现this关键词,类方法中不可以出现this关键词.
 */
public class Person {
    static String schoolName;
    double score;

    //1.类方法中可以直接访问类的成员,不可以直接访问实例成员
    public static void printHello(){
        //调用类变量
        schoolName = "中学";
        //调用类方法
       /*Person.*/printHello2();

        //调用实例变量
        //score = 60; 编译报错

        //调用实例方法
        //printPass(); 编译报错

        //调用this关键词 => 表示当前对象
        //System.out.println(this);//编译报错
    }

    //定义一个类方法
    public static void printHello2(){

    }


    //2.实例方法中是可以直接访问类成员,也可以直接访问实例成员
    //实例方法
    public void printPass(){
        //调用类成员
        schoolName = "高中";
        printHello2();
        printHello();

        //调用实例成员
        System.out.println(score);
        printPass2();

        //调用this关键词
        System.out.println(this);
    }

    public void printPass2(){

    }

}
